═══ 1. Abou this Program ═══ Stardate/2 1.01 (c) Cubus 1996 Stardates/2 is the most useful program a mail can buy. If you like it simply write a mail to cubus@ibm.net to register. Stardates/2 shows the current stardate in at least 10 formats. It comes with some gimmics and Andrew Main's famous Stardate FAQ. Simply enjoy this future-enabled software! This program is dedicated to my father. Forever a boy, that's great! Benjamin Stein - 20. 08. 1996 / Stardate: [-31] 7991.438 ═══ 2. Andrew Main: The Stardate FAQ ═══ Table of Contents  Introduction to this FAQ  Various partial theories  Principles for the investigation  Reference points: the original series  First period of stardates: the original series  Reference points: the classic films  Third period of stardates: the classic films  Second period of stardates: intermediate, ST:TOS to TCFS  Reference points: the next generation  Fifth period of stardates: the next generation  Fourth period of stardates: intermediate, TCFS to ST:TNG  Zeroth period of stardates: before the original series  Conjectural history of stardates  Date calculations  Stardates in the twentieth century  A computer program to calculate the current stardate  Legal notice  Errata ═══ 2.1. Introduction to this FAQ ═══ This mini-FAQ is an attempt to answer once and for all questions concerning the nature of stardates. The system worked out is as satisfactory as is possible in these conditions of confusing and conflicting data. Unlike most FAQs, the sections do not cover completely separate questions; rather, the entire document has a narrative structure, which has been divided into logical sections. Read the next section to see why stardates are so confusing. The majority of the mini-FAQ describes an extensive investigation into stardates. It presents the source data, explains the logical reasoning, and finally describes the conclusions. After the sections describing the investigation, there are four sections that will be of greatest interest to the majority of readers. The first describes the entire system, collating the conclusions of the investigation. This section, unlike all the others, is written from the point of view of a late 24th-century historian. The next calculates Gregorian calender dates for important events in Star Trek history. The third describes how the stardate system can be extended back to the 20th century. The last consists of a computer program in C, which will calculate the current stardate. The system described in this document does not attempt to explain known writing errors. Just as Data's remark in "Encounter at Farpoint" ("Starfleet class of '78...") is commonly ignored, errors of stardate such as those in "Dark Page" are ignored here. Verbal bloopers are also ignored, naturally. Note the following abbreviations, which will be used without further explanation: ┌─────────────────────────┬───────────────────────────────────────────────────────────────────────────┐ │FTB │Federation Timebase │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │SD │stardate │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:TOS │"Star Trek" (the original TV series) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:TAS │"Star Trek" (the animated TV series) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │TCFS │the classic film series (ST:TMP to STVI:TUC) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:TNG │"Star Trek: The Next Generation" (TV series) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:DS9 │"Star Trek: Deep Space Nine" (TV series) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:VOY │"Star Trek: Voyager" (TV series) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:TMP │"Star Trek: The Motion Picture" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │STII:TWOK │"Star Trek II: The Wrath of Khan" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │STIII:TSFS │"Star Trek III: The Search for Spock" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │TVH:STIV │"The Voyage Home: Star Trek IV" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │STV:TFF │"Star Trek V: The Final Frontier" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │STVI:TUC │"Star Trek VI: The Undiscovered Country" (feature film) │ ├─────────────────────────┼───────────────────────────────────────────────────────────────────────────┤ │ST:G │"Star Trek: Generations" (feature film) │ └─────────────────────────┴───────────────────────────────────────────────────────────────────────────┘ ═══ 2.2. Various Partial Theories ═══ There are a number of conflicting theories concerning the meaning of stardates. No entirely perfect system is possible. However stardates are defined, the definition has changed more than once during established Trek history. A fairly plausible theory is that stardates are measured subjectively by each different starship; this means that relativistic time distortions at impulse speeds cause stardate rates to vary, from an objective point of view. Unfortunately such a system would be useless across the Starfleet, because stardate X to the Enterprise would be stardate Y to the Potemkin, and stardate Z to the Sutherland. Not very helpful when arranging a rendezvous. The computers available in the 20th century are capable of allowing for this effect, so it is certainly possible in the 23rd century. Another theory is that stardates refer only to the ship's current mission, but increase at an objectively constant rate. This is an improvement over the previous theory, because different ships' stardates would differ by constant values only. However, it doesn't account for the Earthbound use of stardates, or the demonstrated universality of stardates in ST:TNG. The only type of stardates that would be of any use would be those referring to a single standard timebase (i.e. the Federation Timebase), and having the same zero point for everyone. This constraint makes matters a little complicated, because it means that the rate of increase of stardates is not totally constant. A large number of theories try to make stardates work in exactly the same way throughout Trek history. This just isn't possible, and such theories inevitably ignore large sections of Trek in order to seem plausible. For example, the duration of the ST:TNG series is confirmed within itself to have lasted about seven years, during which time the stardate has increased almost 7000 units. This is irreconcilable with the fact that SD 5943.7 to SD 7411.4 was more than two years (ST:TMP). It has been suggested, in jest, that stardates are actually hexadecimal, and that it is merely coincidence that only decimal digits have been heard so far. This is worth mentioning, in order to point out that this document proceeds on the basis that all stardates are specified in decimal. It is interesting to note, however, that the distribution of digits is far from uniform. A canonical stardate ending in ".8" is a real rarity, though not totally unknown. ═══ 2.3. Principles for the Investigation ═══ Since there must be some basis for a system, the following will be assumed, in decreasing order of importance: 1. Stardates occur in the `right' order. That is, the stardate will always increase numerically in the direction of advancing time. From time to time it will be necessary for the stardate to be reset to zero, but only on a finite set of occasions. On the principle that the system be as simple as possible, this set must be as small as possible. 2. Stardates will, in general, increase at a constant rate relative to the Federation Timebase. From time to time this rate may vary, but only on a finite set of occasions. On the principle that the system be as simple as possible, this set must be as small as possible. 3. Stardate rates will be round numbers relative to Terran phenomena such as days or years. The Federation Timebase (FTB) will be assumed to be in a reference frame indistinguishable from that of Terra. As a result, a Terran calender -- specifically the Gregorian calender -- will be used to unambiguously refer to points in time. Given the above assumptions -- and working by the principle that the system should be as simple as possible -- what follows is the investigation of the stardate system. Classic Trek stardates will be discussed first; the ST:TNG stardates can be added to the system later (and relatively easily). Note: unless otherwise stated, all stardates and Terran dates specified are exact. ═══ 2.4. Referemce Points: The Original Series ═══ Going by the Star Trek Chronology, the firsat and last episodes are "The Corbomite Maneuver" (SD 1512.2; assumed to take place 300 years after it aired, i.e. September 2266) and "Turnabout Intruder" (SD 5928.5; early 2269). This choice of episodes has some faults. "Turnabout Intruder" was the last episode aired, but the stardate of "All Our Yesterdays" was later (stardate 5943.7 against 5928.5). Under principle 1, "All Our Yesterdays" must be taken as the end-point for the mission. (It makes little difference anyway, because the actual date is only conjecture.) Similarly, there is room for dispute over which episode comes first. "The Corbomite Maneuver" (SD 1512.2) was first in regular production, but that doesn't necessarily mean anything. Similarly, "The Man Trap" (SD 1531.1), the first episode aired, is not a good starting point. "Where No Man Has Gone Before" (SD 1312.4) was first overall in both production and stardate, but is generally regarded as being quite distinct from the rest of the series. "Mudd's Women" (SD 1329.1) has the earliest stardate of the episodes in regular production, providing another possible starting point. However, the episode "Charlie X" (SD 1533.6) contains a clear reference to Terran dates, making all this arbitrariness unnecessary. At one point in "Charlie X", Kirk states that it is Thanksgiving day on Earth. For those not familiar with American customs, Thanksgiving day is the fourth Thursday in November. Assuming Kirk was indeed referring to that same Thanksgiving day (which seems likely), and accepting the Chronology's calculation of year, this pins down the date of Kirk's statement to 2266-11-22. Let this be the day after the initial statement of the stardate for the episode, and the conclusion is reached that the episode started on 2266-11-21. This is only two months different from the Chronology's conjecture, and has the advantage of being completely non-arbitrary. ═══ 2.5. First Period of Stardates: The Original Series ═══ Stardate 1533.6 was sometime during 2266-11-21. According to the Chronology, the end of the series (SD 5943.7) was in early 2269. The is approximately 4400 units spanning two and a half years. A nice round number close to this rate is 5 units per day. (4.8 units/day -- 0.2u/hour -- is also within the possible range. It would be less plausible, however, because it relates to hours, which are purely a human invention, whereas days are a natural phenomenon.) With this rate, to make things easier, it can be assumed that any exact multiple of 5 units is midnight. So the Thanksgiving day in question, 2266-11-22, runs from exactly SD 1535 to just before SD 1540. Therefore, SD 5940 is 00:00 on 2269-04-21 ("All Our Yesterdays" is on that day). This rate puts "Where No Man Has Gone Before" in 2266, in contradiction to the speculative date in the Chronology. (This is not a problem, because there is no stronger evidence to back up that particular speculation.) It also set dates for a number of other events that the Chronology has assigned conjectural dates. It gives us a date of 2270-02-09 for ST:TMP, which is not acceptable. ST:TMP should occur in late 2271, to give Kirk time to have "not logged a single star hour in two and a half years". So the stardate rate must have changed at some stardate between 5943.7 and 7411.4. ═══ 2.6. Reference Points: The Classic Films ═══ Going by the Star Trek Chronology again, these dates may be useful. "Star Trek: The Motion Picture" (SD 7411.4) was in late 2271, at least 30 months after the end of the original TV series. "Star Trek III: The Search For Spock" (SD 8210.3) was in late 2285. "Star Trek VI: The Undiscovered Country" (SD 9521.6) was in 2293. These dates are conjectural, but they have a solid basis. They may be moved a little without contradicting anything other than the Chronology. (By the way, ST:TMP really does have a stardate of 7411.4, despite the manuals that say 7412.6. One of the barely-audible messages at the Epsilon 9 station mentions a rendezvous between two Federation ships to take place on stardate 7411.4. If you listen carefully it is also possible to make out the ships' names and registry numbers -- scout Columbia NCC-621 and scout Revere NCC-595.) TVH:STIV is about 3 months after STIII:TSFS according to Captain Kirk's log, but this reference can be ignored because he may have meant Vulcan months. ═══ 2.7. Third Period of Stardates: The Classic Films ═══ It turns out that the stardate rate has to change sometime between ST:TMP and STII:TWOK, as well as sometime before ST:TMP. The details of that period, encompassing ST:TMP, can't be calculated until this bit, for the remainder of the classic films, has been done. The reference points to use for this are STIII:TSFS (SD 8210.3; late 2285) and STVI:TUC (SD 9521.6; conjectured to be 2293). The gap is 1311.3 units, covering 7-8 years. A suitable rate is 0.5 units per day. (0.48u/d -- 0.02u/hour -- is also within the possible range.) Similarly to the first period of stardates, it can be assumed that any exact multiple of 0.5 units is midnight. This means that the days on which STIII:TSFS and STVI:TUC start will start at stardates 8210.0 and 9521.5 respectively. The calculation of exactly which dates these are must wait until the details of the intermediate stardate rate have been calculated. ═══ 2.8. Second Period of Stardates: Intermediate, ST:TOS to TCFS ═══ Neither of the periods of stardates discussed above gives a satisfactory date for ST:TMP. It is therefore necessary to have an intermediate period of stardates to link the two. It is possible to make this link with a single intermediate period. This period must use up stardates much more slowly than either of the adjacent periods. This intermediate period can have a rate of about 0.156u/d at the most. To have a rate any higher, this period would have to extend into ST:TOS or beyond STII:TWOK. It would be possible to use a rate of 0.15u/d (which has the advantage of making a standard 8-hour shift exactly 0.05 units long), but this makes the day length messy. (3u/d or 0.3u/d would be more manageable, but it isn't possible in this case.) The most logical rate to use is 0.1u/d. Now to place ST:TMP... It must be a fair bit more than 30 months after "All Our Yesterdays", ideally in late 2271. To make the changeover point from ST:TOS stardates to this period an exact midnight -- it would be madness to do otherwise -- it must be a multiple of 5 units. This means that moving it one day forward or back changes the date of ST:TMP by 49 days, because the stardate rates differ by a factor of 50. The most reasonable date possible for ST:TMP under this limitation is 2272-01-10, with the changeover at SD 7340.0 (2270-01-26). This is not quite in 2271, but close enough not to cause problems with later dates. And for the second changeover... It turns out that fairly sensible dates for STIII:TSFS and STVI:TUC can be obtained by putting the second changeover at SD 7840.0 (2283-10-05) -- exactly 5000 days (500 units) after the first changeover. This makes it all look designed. This puts STIII:TSFS at 2285-10-14, consistent with the Chronology. It also makes STVI:TUC 2292-12-19, which is not quite the conjectural 2293, but is close enough. ═══ 2.9. Reference Points: The Next Generation ═══ Throughout ST:TNG stardates have increased at approximately 1000 units per year. (In fact, during ST:TNG, the second digit of the stardate indicated the season.) From these facts, the Chronology has conjectured that ST:TNG stardates increase at exactly 1000 units per year. Numerous references within the series supports this conjecture. Of course, they support it because the shows were written with that system in mind. It would be madness to try to contradict this. In "The Neutral Zone" (SD |), Data stated that the year was 2364. This almost solves the problem of year calculations. The only problem is that Data did not go on to say exactly what day of the year it was, so there is an uncertainty of one year when calculating dates from this. ═══ 2.10. Fifth Period of Stardates: The Next Generation ═══ Note that ST:TNG stardates have five digits before the decimal point, where ST:TOS stardates have four. This would seem to suggest a change of outlook on the part of the Federation, from short-term to long-term. This coincides with the change from stardate units being convenient fractions of Terran days to being a convenient fraction of a year. Also, the length of stardates in ST:TOS could allow for up to about 5.4 years before needing to be reset to zero, whereas the ST:TNG stardates only need to be reset once a century. (Presumably one often needed to specify which period of 5.4 years one meant by a particular stardate.) The Chronology proceeds under the assumption that all first season stardates were in the year 2364, and then all second season in 2365, and so on. There isn't really any evidence to support this, but it makes things neat. The production crew have occasionally calculated exact dates on this basis. In order to keep things simple, it will be assumed that this is how the stardates actually work. This makes stardate 00000.0 midnight at the beginning of 2323-01-01. Stardate 99999.9 should be about 50 minutes before midnight on 2422-12-31, after which the stardates get reset to zero again. However, it is not possible to state this as being exact, because not all centuries are the same length. Every fourth century contains 25 leap years; the rest have 24 each. The difference in the lengths of individual years creates a more immediate problem: the 1000s of units can't match up exactly with calender years. Obviously, one solution would be for the stardate rate to vary from year to year, making each year 1000 units whether it is 365 or 366 days long. This is not acceptable as a universal time system, however. The rate changing every fourth Terran year makes things difficult for the Vulcans, and the Andorains, and in fact almost every member of the Federation. So the rate must make 1000 units fit a mean solar year of 365.2425 days exactly. (Actually that's not quite exact, but that is the exact mean length of a year by the Gregorian calender. This is more appropriate, because the Gregorian calender is being used to specify dates.) 400 years is exactly 146097 days, no matter which 400 years one counts. By a happy coincidence, this is exactly 20871 weeks. (This fact is of no practical use, except in the construction of perpetual calenders.) For convenience, it can be conjectured that starships on extended voyages -- and maybe some civilians too -- use a standard year of length 365.2425 days. This doesn't mean they add on an extra 5.82 hours at the end of the year, but that they distribute it evenly throughout the year. This makes each day about 57.4 seconds longer than 24 hours. In fact, they would probably distribute it during the day as 2.39 seconds per hour. The two calender styles could coexist quite easily, because they would rarely be more than a few hours different. In order for them to coexist successfully, however, they must agree on what day of the week any particular date falls on. (A consequence of this is that existing perpetual calenders will still be applicalble to the new calender.) Where there would be a leap day in the old-style Gregorian calender, there is merely a jump in the day of the week. For example, Wednesday 2396-02-28 would be followed by Friday 2396-03-01, missing out Thursday 2396-02-29. This new calender will hereafter be called the "quad-cent calender". It comes exactly into line with the old-style calender every 400 years. Since the origin for ST:TNG stardates is 2323-01-01, that must be when the two calenders match up. (The next time will be 2723-01-01.) Hereafter, quad-cent calender dates will be written like 2323*01*01, instead of 2323-01-01. ═══ 2.11. Fourth Period of Stardates: Intermediate, TCFS to ST:TNG ═══ SD 9521.5 corresponds to the date 2292-12-19. The digits run out and are reset to zero on 2295-08-03. This starts a special `issue' of stardates, whose sole purpose is to bridge the gap to 2323-01-01, when the new-style stardates take over. In this new issue, SD 5000.0 is 2322-12-19, exactly 30 years after STVI:TUC (by coincidence). This makes 2323-01-01 SD 5006.5. (If only Thanksgiving were thirteen days later, these numbers would be unbelievably neat.) So stardate 5006.5 in that issue became stardate 00000.0, and the date, 2323-01-01, became 2323*01*01 for the purposes of stardates. ═══ 2.12. Zeroth Period of Stardates: Before the Original Series ═══ From the ST:TOS stardates we know that SD 1530 is 2266-11-21. Extending this back, SD 0000 is 2266-01-19, well after the beginning of the five-year mission. To go further back, we must go into an earlier `issue' of stardates. In this earlier issue, SD 9995 must be 2266-01-18 (one day before the ST:TOS stardate 0000). This makes SD 0000 in this issue 2260-07-29. Continuing this process backward, it should be possible to find a sensible starting point for all stardates. None of the major real-life space events is a 0000. The 43rd issue before the classic series has its 0000 on 2030-08-04, and 2030 is supposed to be the year of Zefram Cochrane's birth. This is a rather implausible candidate for the origin. There is no 0000 in 2061 (the year of Cochrane's first demonstration of lightspeed propulsion), so it looks like stardates just aren't based on any significant event in space travel. The 19th issue before the ST:TOS stardates has its SD 0000 on 2162-01-04, which is tantalizingly close to 2161 (Federation incorporation). In fact, if this had been calculated before "The Outcast" was made, the Federation would probably have been incorporated on 2162-01-04. Taking this as the origin of stardates, it could mean that Starfleet originally used old-style Terran dates, but found them inappropriate for deep-space use. A few months after incorporation, then, they started up stardates. If we call these first stardates `zeroth-issue', which will be written like [0]0000, ST:TOS uses 19th-issue stardates (e.g. [19]1530 is 2266-11-21). The partial issue to link the TCFS stardates with the ST:TNG stardates is the 20th issue, and ST:TNG stardates are 21st issue. This notation provides a convenient way to refer to stardates a long way from the current time. ═══ 2.13. Conjectural History of Stardates ═══ Before the Federation was founded, everyone involved in space travel used their own time system. Terrans used the Gregorian calender and UTC; Vulcans used their own calender. Initially the Federation used the Terran calender, just as it used the Terran language and had its headquarters on Earth. This system proved to be extremely unpopular, especially with the Vulcans, who liked a calender to have some logic about it. (Alternating 30-day months with 31 is fine, but sticking a 28 in the middle of that lot is just silly.) Starfleet bureaucrats quickly devised a compromise system -- which didn't match anyone's calender. Midnight on 2162-01-04 (only a few months after the incorporation of the Federation) was arbitrarily declared to be stardate zero, and stardates increased at the arbitrary rate of five units per Terran day. This recognized the importance of Terra to the Federation, but also allowed anyone to convert stardates to their own calender by simple mathematical formulae. The system having been cobbled together in a rush, the numbers became unmanageable fairly soon. What would have been stardate 10000 (midnight on 2167-06-27) was made stardate 0000 again. The first group of stardates could be referred to, when necessary, as zeroth-issue stardates, such as [0]1234, and the new issue as first-issue stardates, such as [1]1234. This reset to zero continued to occur every five and a half years, until 2266, when the 19th issue of stardates started. The Federation now having survived a little over a century, referral to stardates several issues ago was becoming increasingly common. That year, Starfleet put together a committee to investigate what type of stardate system would be more acceptable. The committee's report, in 2267, recommended that the stardate rate be slowed to 0.1 units per day, which would make the same number of digits as had been previously used last two and a half centuries. It was decided that this system should be field-tested between stardates [19]7340 and [19]7840 -- 500 units, 5000 days. So from 2270-01-26 to 2283-10-05 this system was used. It proved to be unpopular, because one always had to specify an extra digit after the decimal point in order to get the sort of precision one had had with the older stardates. Terrans who had grown accustomed to the five-per-day rate found it difficult to adjust. As a result, it was decided in 2280 that at the end of the test period (SD [19]7840) the new rate should not continue. Instead, a 0.5 units per day rate would be used, which would solve the main problems of both earlier systems. Four digits (before the decimal point) would last more than fifty years; it would rarely be necessary to use extra digits; and the five-per-day rate would be preserved. (Five of a different digit, but still five.) This system was used from stardate [19]7840, and was intended to last an indefinite period. With the length of starships' missions continually increasing, it started to look rather comic for starships to keep in time with the daily cycle of a planet they would sometimes have no contact with for years at a time. Keeping to its yearly cycle still had some logic, but keeping to a 24-hour day as well -- which necessitated the use of leap days -- was just silly. In 2318, over 150 years after the incorporation of the Federation, it was decided that starships should start to use a rationalised calender, which would keep the years the right length but make the day slightly longer. In keeping with this longer-term view of time, the stardates would be increased to five digits, and the rate changed to match this new rationalised year. A rate of 1000 units per mean year would be convenient. This would make it impossible to instantly work out the time of day from the stardate, but Terrans tend to prefer the traditional hours, minutes and seconds for specifying times. In fact, such times were used for ships' business on Terran ships all through the time that stardates could have been easily used instead. What would have been stardate [20]5006.5 -- midnight on 2323-01-01 -- became stardate [21]00000. At the same time, all Earth ships switched to the new-style calender, and the stardate rate was changed to match it. This system has remained in use up to the present (SD [21]48000, 2371*01*01). ═══ 2.14. Date Calculations ═══ Here's when the classic movies are set: ┌──────────────────────────────────────────────────┬────────────────────┬────────────────────┐ │Star Trek: The Motion Picture │7411.4 │2272-01-10 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Star Trek II: The Wrath of Kahn │8130.3 │2285-05-07 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Star Trek III: The Search For Spock │8210.3 │2285-10-14 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │The Voyage Home: Star Trek IV │8390 │2286-10-09 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Star Trek V: The Final Frontier │8454.1 │2287-02-14 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Star Trek VI: The Undiscovered Country │9521.6 │2292-12-19 │ └──────────────────────────────────────────────────┴────────────────────┴────────────────────┘ Helpfully, STV:TFF occurs in 2287, as the Chronology conjectures. These dates make Vulcan months about four times as long as Terran ones. Kirk's birthday (STII:TWOK) is the 7th of May. "The Deadly Years" (SD 3478.2) was 2267-12-15, and Kirk was 34 then, which means that his birthdate must be 2233-05-07. The year is consistent with the Chronology, though the day isn't. [Explanations of where they got the date from will be gratefully accepted.] In ST:TNG, date calculations are much easier, because of the 1000 units per year rate and the quad-cent calender. The year can be obtained from the first two digits, and the day from the rest (and there is no need to consider leap years). Here are a few significant dates: ┌──────────────────────────────────────────────────┬────────────────────┬────────────────────┐ │Enterprise-D commissioned │40759.5 │2363*10*05 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Encounter at Farpoint │41153.7 │2364*02*26 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Datalore │41242.4 │2364*03*30 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Skin of Evil │41601.3 │2364*08*08 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Future Imperfect │44286.5 │2367*04*15 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Emissary (ST:DS9) │46379.1 │2369*05*19 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Descent, Part II │47025.4 │2370*01*10 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Parallels │47391.2 │2370*05*23 │ ├──────────────────────────────────────────────────┼────────────────────┼────────────────────┤ │Star Trek: Generations │ │ │ └──────────────────────────────────────────────────┴────────────────────┴────────────────────┘ The commissioning date of the Enterprise bears a suspicious resemblance to the launch date of Sputnik I (1957-10-04). This is designed; in fact the Enterprise date was supposed to be 2363*10*04, but a mistake was made. There is a trap when calculating these dates that would make any stardate appear to represent a date one day earlier than it should. It would appear that Sternbach and Okuda fell right in it. The "Future Imperfect" date is Riker's birthday, and "Parallels" is Worf's birthday. Using the "Datalore" and "Descent, Part II" stardates, Lore's lifespan can be calculated at 5 years, 286 days. There is a slight problem with some of the ST:TNG first season stardates. "The Battle" (SD 41723.9), "The Big Goodbye" (SD 41997.7), "Angel One" (SD 41636.9) and "The Arsenal of Freedom" (SD 41798.2) all have stardates after "Skin of Evil" (SD 41601.3), but show Tasha Yar alive. It seems that the production crew learnt from this, because they have kept stardates in order ever since. To make these stardates make sense, we must assume them to be slips of the captain's tongue. (Other verbal errors were made in "The Deadly Years", "Datalore" and "Birthright, Part II".) ═══ 2.15. Stardates in the Twentieth Century ═══ It has been calculated that stardates begin on 2162-01-04. It is quite possible, of course, to continue stardates back in time from that point, using negative issue numbers. Within each issue the stardates will still increase in the direction of advancing time; only the issue numbers will be unusual. To start with, midnight on 2162-01-04 is stardate [0]0000. This means that midnight on 2162-01-04 can be referred to as stardate [-1]9995. SD [-1]0000, consequently, was 2156-07-14. The fact that stardates were not actually in official use at that time is irrelevant. It is quite possible that negative-issue stardates are used in the 23rd century to refer to events prior to 2162, though when going as far back as the 20th century the old-style Gregorian calender has always been used by the crew of the Enterprise. It is possible, of course, to continue stardates back to the 20th century, though the issue numbers get sufficiently large (in the negative direction, of course) to be awkward. This table shows the issue origins for the next few years: ┌───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────┐ │[-36]0000 │1964-11-18 │[-24]0000 │2030-08-04 │[-12]0000 │2096-04-19 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-35]0000 │1970-05-11 │[-23]0000 │2036-01-25 │[-11]0000 │2101-10-11 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-34]0000 │1975-11-01 │[-22]0000 │2041-07-17 │[-10]0000 │2107-04-03 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-33]0000 │1981-04-23 │[-21]0000 │2047-01-07 │[-9]0000 │2112-09-23 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-32]0000 │1986-10-14 │[-20]0000 │2052-06-29 │[-8]0000 │2118-03-16 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-31]0000 │1992-04-05 │[-19]0000 │2057-12-20 │[-7]0000 │2123-09-06 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-30]0000 │1997-09-26 │[-18]0000 │2063-06-12 │[-6]0000 │2129-02-26 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-29]0000 │2003-03-19 │[-17]0000 │2068-12-02 │[-5]0000 │2134-08-19 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-28]0000 │2008-09-08 │[-16]0000 │2074-05-25 │[-4]0000 │2140-02-09 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-27]0000 │2014-03-01 │[-15]0000 │2079-11-15 │[-3]0000 │2145-08-01 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-26]0000 │2019-08-22 │[-14]0000 │2085-05-07 │[-2]0000 │2151-01-22 │ ├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ │[-25]0000 │2025-02-11 │[-13]0000 │2090-10-28 │[-1]0000 │2156-07-14 │ └───────────────┴───────────────┴───────────────┴───────────────┴───────────────┴───────────────┘ Looking at today's date, 1994-05-23 is SD [-31]3890. Right now, 12:43pm UTC, is SD [-31]3892.64. The first episode of Star Trek aired on stardate [-36]3300.31. The next section is very relevant to this matter, and is likely to be of interest. ═══ 2.16. A Computer Program to Calculate the Current Stardate ═══ /** * stardate.c: function to calculate stardate from UNIX time format * by Andrew Main, 1994-11-28, stardate [-31]4836.09 * * * This has been written to compile under traditional C. **/ /** * Uncomment the following main() function to make a program that will * display the current stardate with two decimal places. The output will * change every three minutes (actually every 172.8s). **/ /******************** #include #include #include int stardate(); int main() { time_t tm; long issue, integer, fraction; // the following code was added by // Benjamin Stein and should be used // on OS/2 #if (defined (__IBMCPP__) || defined (__HIGHC__)) _tzset(); #endif #if (defined (__EMX__) || defined (__WATCOM_CPLUSPLUS__)) tzset(); #endif // end of insertion if((tm=time((time_t *)0)) == (time_t)-1) { printf("Error in time()\n"); return 1; }; if(stardate((unsigned long)tm, &issue, &integer, &fraction)) { printf("Error in stardate()\n"); return 1; }; printf("The current stardate is [%ld]%04ld.%02ld\n", issue, integer, fraction/10000); return 0; } ********************/ /** * stardate(): calculates stardate * Prototype: int stardate(unsigned long tm, UNIX-type time * long *issue, returns issue number * long *integer, returns integral part of SD * long *fraction) returns fraction * Return value: zero on success, non-zero on failure * * The long type is assumed to be at least 32 bits. This makes unsigned long * suitable to hold a UNIX-type time. * * The fraction returned is scaled so that it is in the range 000000 to * 999999 inclusive. Its units digit represents 0.000001 stardate units. * This digit theoretically changes every 0.01728 (exactly) seconds, but of * course not every value can actually be returned. This is because the time * passed is only specified to a precision of one second. The intent in * making the function provide six fractional digits is to make the returned * stardate different every second. * * The returned values are not rounded at all, but are instead deliberately * truncated. This behaviour is desired, so that the date that is returned * is known to be before or equal to the date passed; this is how times and * dates are normally treated. * * The function uses the knowledge that 00:00 UTC on 1970-01-01, the zero * point for UNIX time, is SD [-36]9350. It also `knows' that each stardate * unit covers 17280 seconds. **/ int stardate(tm, issue, integer, fraction) unsigned long tm; long *issue,*integer,*fraction; { /* It would be convenient to calculate the fractional part with */ /* *fraction = ( (tm%17280) *1000000) / 17280; */ /* but the long int type may not be long enough for this (it requires 36 */ /* bits). Cancelling the 1000000 with the 17280 gives an expression that */ /* takes only 27 bits: */ *fraction = ( (tm%17280) *3125) / 54; /* Get integer part: */ *integer = tm/17280 + 9350; /* At this stage, *integer contains the issue number in the obvious place, */ /* biased to always be non-negative. The issue number can be extracted by */ /* simply dividing *integer by 10000 and offsetting it appropriately: */ *issue = (*integer/10000) - 36; /* Remove the issue number from *integer: */ *integer %= 10000; /* Successful return: */ return 0; } /** * EOF: stardate.c **/ ═══ 2.17. Legal Notice ═══ This document is copyright (C) 1994 Andrew Main. Permission is granted to redistribute or quote sections of this text, provided that this notice remains attached and unmodifed, and that no profit is made by doing so. ═══ 2.18. Errata ═══ The stardate for "The Neutral Zone", incorrectly given as "|" (a placeholder), is 41986.0. Kirk's birthday, according to the Chronology, is the 22nd of March. The source for this was William Shatner's actual birthday. Because that date has no canonical validity, the date calculated elsewhere in the mini-FAQ is preferable. (Thanks to for pointing this out.) The stardate for "Star Trek: Generations" is 48632.4, as far as I am aware. This makes its actual date 2371*08*19. The Enterprise-D was destroyed, as far as I know, on stardate 48650.1, making its actual date 2371*08*26. (I have not seen the film myself; confirmation or otherwise of these stardates would be most welcome.) The actual date of stardate [-1]9995 is, of course, 2162-01-03, and not 2162-01-04 as stated in section XV. The 20th-issue stardate for 2323-01-01, given in section XI as [20]5006.5, should be [20]5006.0. A major reorganization and expansion of this mini-FAQ is in progress. Comments are welcomed from any interested sapient being. ═══ 3. Using this Program ═══ Using this program is as simple as riding the moon. Here are some tips. In the configuration dialog select the desired format for your stardate clock and click on Apply. You may try several formats on the fly. Finally you can warp away the dialog clicking on Close. The formats contain the prefix and/or the integer and/or the fraction of the current stardate. See the Stardate FAQ for detailed information about these values. ═══ 3.1. Configure ═══ Stardate/2 can show the current stardate in at least 10 formats. Click on this menu item to warp up the format configuration dialog. See the Stardate FAQ for detailed information about these values. ═══ 3.2. On Top ═══ If you enable this option Stardate/2 will always stay on top of all other windows on your desktop. ═══ 3.3. Copy To Clipboard ═══ This function copies the string Stardate: plus the current stardate to the clipboard. The currently configured stardate format is used. Later versions of Stardate/2 may act as a DDE-Server. For now this is the only easy way to transfer the stardate information to other applications. Sorry. ═══ 3.4. Close ═══ You never need this menu item. Simply forget it. ═══ 3.5. About ═══ An About Dialog is an About Dialog is an About Dialog... ═══ 3.6. Help ═══ If you read this panel you already know what this menu item does. ═══ 3.7. Apply ═══ Click on "Apply" the cause Stardate/2 to show the current stardate using the selected format. See the Stardate FAQ for detailed information about these values. ═══ 3.8. Close Dialog ═══ This button warps away the dialog without setting a new stardate format. See the Stardate FAQ for detailed information about these values.